Central identity management software such as Microsoft's Active Directory® (AD) allows individual users to login to any computer in an enterprise network, and automatically have their personal settings made available. Thus, when a user moves from computer to computer within an enterprise, he or she can continue to work effectively. Users logging on via a central identity management solution are not bound to a single physical machine, but instead can work efficiently anywhere on the network.
AD uses a central database to store information and settings across a domain. AD networks can vary from a small installation with a few hundred objects, to a large installation with millions of objects. An AD structure is a hierarchical framework of objects. The objects fall into three broad categories: resources (e.g., printers), services (e.g., email), and users (user accounts and groups). AD provides information on the objects, organizes the objects, controls access and sets security. Each object represents a single entity—whether a user, a computer, a printer, or a group—and its attributes.
Application streaming provides the ability for an endpoint (e.g., a client computer) to run an application locally that is stored remotely, for example on a server. The server transmits specific portions of the application (e.g., code pages) to the endpoint, as the endpoint needs them. Application streaming offers a number of advantages over running the application on the server. Streaming the application allows the application to execute locally on the endpoint, instead of remotely on the server. This eliminates the need for large farms of servers to provide applications to a plurality of client computers. Application response time to the user is also significantly faster when the application is run locally on the endpoint, as opposed to remotely on the server. Commercial application streaming technology exists today.
A network file system is a computer file system that supports sharing of resources such as files, printers and/or persistent storage over a computer network. Network file systems such as Andrew File System (AFS), NetWare Core Protocol (NCP), and Server Message Block (SMB, also known as Common Internet File System (CIFS)) exist today. Network file systems can share files, including executable files, between servers and endpoints.
Both application streaming technologies and network file systems can be used to execute applications stored on a remote server on a local endpoint. When a server streams application content to an endpoint, the endpoint typically stores that content in a cache, so that the server need not retransmit duplicate application content to the same endpoint. Furthermore, when an application originating from a server runs on an endpoint, the application tends to create various local objects, such as output, log or temporary files, all of which affect the user's experience with the application. The application may also be configured for the local endpoint on which it is running, for example by being set to use a local printer or optimized for the local hardware settings.
Current application streaming technologies and network file systems have no correspondence to user identity. Thus, if a user of a central identity management solution such as AD logs onto a different computer from the one on which the a remote application was run previously, although the user can have his or her user profile automatically loaded on the new computer, the new computer will have no information whatsoever about the cache, created files or local settings of remotely executed applications. Therefore, the user will have to download duplicative application content, recreate local files, and reset application preferences and configuration information. This has a significant negative impact the user's experience.
It would be desirable to have application streaming technology and network file systems that do not, have these problems.